home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / SCSL / zlassq.z / zlassq
Encoding:
Text File  |  2002-10-03  |  3.4 KB  |  133 lines

  1.  
  2.  
  3.  
  4. ZZZZLLLLAAAASSSSSSSSQQQQ((((3333SSSS))))                                                          ZZZZLLLLAAAASSSSSSSSQQQQ((((3333SSSS))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      ZLASSQ - return the values scl and ssq such that  ( scl**2 )*ssq = x( 1
  10.      )**2 +...+ x( n )**2 + ( scale**2 )*sumsq,
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      SUBROUTINE ZLASSQ( N, X, INCX, SCALE, SUMSQ )
  14.  
  15.          INTEGER        INCX, N
  16.  
  17.          DOUBLE         PRECISION SCALE, SUMSQ
  18.  
  19.          COMPLEX*16     X( * )
  20.  
  21. IIIIMMMMPPPPLLLLEEEEMMMMEEEENNNNTTTTAAAATTTTIIIIOOOONNNN
  22.      These routines are part of the SCSL Scientific Library and can be loaded
  23.      using either the -lscs or the -lscs_mp option.  The -lscs_mp option
  24.      directs the linker to use the multi-processor version of the library.
  25.  
  26.      When linking to SCSL with -lscs or -lscs_mp, the default integer size is
  27.      4 bytes (32 bits). Another version of SCSL is available in which integers
  28.      are 8 bytes (64 bits).  This version allows the user access to larger
  29.      memory sizes and helps when porting legacy Cray codes.  It can be loaded
  30.      by using the -lscs_i8 option or the -lscs_i8_mp option. A program may use
  31.      only one of the two versions; 4-byte integer and 8-byte integer library
  32.      calls cannot be mixed.
  33.  
  34. PPPPUUUURRRRPPPPOOOOSSSSEEEE
  35.      ZLASSQ returns the values scl and ssq such that ( scl**2 )*ssq = x( 1
  36.      )**2 +...+ x( n )**2 + ( scale**2 )*sumsq, where x( i ) = abs( X( 1 + ( i
  37.      - 1 )*INCX ) ). The value of sumsq is assumed to be at least unity and
  38.      the value of ssq will then satisfy
  39.  
  40.         1.0 .le. ssq .le. ( sumsq + 2*n ).
  41.  
  42.      scale is assumed to be non-negative and scl returns the value
  43.  
  44.         scl = max( scale, abs( real( x( i ) ) ), abs( aimag( x( i ) ) ) ),
  45.                i
  46.  
  47.      scale and sumsq must be supplied in SCALE and SUMSQ respectively.  SCALE
  48.      and SUMSQ are overwritten by scl and ssq respectively.
  49.  
  50.      The routine makes only one pass through the vector X.
  51.  
  52.  
  53. AAAARRRRGGGGUUUUMMMMEEEENNNNTTTTSSSS
  54.      N       (input) INTEGER
  55.              The number of elements to be used from the vector X.
  56.  
  57.      X       (input) COMPLEX*16 array, dimension (N)
  58.              The vector x as described above.  x( i )  = X( 1 + ( i - 1 )*INCX
  59.              ), 1 <= i <= n.
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ZZZZLLLLAAAASSSSSSSSQQQQ((((3333SSSS))))                                                          ZZZZLLLLAAAASSSSSSSSQQQQ((((3333SSSS))))
  71.  
  72.  
  73.  
  74.      INCX    (input) INTEGER
  75.              The increment between successive values of the vector X.  INCX >
  76.              0.
  77.  
  78.      SCALE   (input/output) DOUBLE PRECISION
  79.              On entry, the value  scale  in the equation above.  On exit,
  80.              SCALE is overwritten with the value  scl .
  81.  
  82.      SUMSQ   (input/output) DOUBLE PRECISION
  83.              On entry, the value  sumsq  in the equation above.  On exit,
  84.              SUMSQ is overwritten with the value  ssq .
  85.  
  86. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  87.      INTRO_LAPACK(3S), INTRO_SCSL(3S)
  88.  
  89.      This man page is available only online.
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.